[% setvar title The Perl 6 Summary for the week ending 20040229 %]
<div id="archive-notice">
    <h3>This file is part of the Perl 6 Archive</h3>
    <p>To see what is currently happening visit <a href="http://www.perl6.org/">http://www.perl6.org/</a></p>
</div>
<div class='pod'>
<a name='The Perl 6 Summary for the week ending 20040229'></a><h1>The Perl 6 Summary for the week ending 20040229</h1>
<p>Welcome to the leapday summary. We'll crack straight on with
perl6-internals</p>
<a name='Running up to release time'></a><h2>Running up to release time</h2>
<p>As Leapday had been chosen as the release date for Parrot 0.1.0, the
week was mostly spent getting things ready for release. A case in point
was the <b><i>PLATFORMS</i></b> file which lists those platforms on which Parrot is
known to compile and run, which (at the beginning of the week) was short
several platforms and generally out of date. So everyone manned the
pumps and sent in reports of success and failure. BTW, if you manage to
get Parrot up and running (or even partially up and limping) on a
platform that's not listed in <b><i>PLATFORMS</i></b> then <a href='mailto:perl6-internals@perl.org'>perl6-internals@perl.org</a>
would be very pleased to hear from you.</p>
<p><a href='http://groups.google.com/groups?selm=4039C81F.1090108@toetsch.at' target='_blank'>groups.google.com</a></p>
<a name='Objects and time'></a><h2>Objects and time</h2>
<p>Dan announced that he'd trodden on one of the nasty bits of objects;
the proper ordering of classes for initialization and destruction in
the face of multiple inheritance. He announced that he was in the
process of actively ignoring it for the time being and canvassed
opinions about whether to delay the Leapday release in favour of fully
specced/implemented objects or whether to make the 29th without
objects, or some other choice. In the end we decided to still aim for
the 29th, with objects in a 90% there state, but with big 'HERE BE
DRAGONS' warnings plastered on the tricky edge cases. A little later
Dan announced what would be there for the release (Multiple
inheritance, attributes, object instantiation and method calls) and what
wouldn't (monkeying with some things after subclassing/instantiation,
method redispatch and fancy namespace lookups).</p>
<p>As the week progressed, objects inched closer and closer to readiness,
though at least one summarizer's heart was in his mouth as the week
ebbed away. Would Dan get everything he'd promised working before the
deadline? Tune in later on to find out.</p>
<p><a href='http://groups.google.com/groups?selm=a06010202bc5fcbfaeb19@' target='_blank'>groups.google.com</a>[172.24.18.98]</p>
<p><a href='http://groups.google.com/groups?selm=a06010205bc5fd8fef7f7@' target='_blank'>groups.google.com</a>[172.24.18.98]</p>
<a name='Feature Freeze'></a><h2>Feature Freeze</h2>
<p>On Wednesday, Leo Tötsch announced a feature slush (patches to add OO
features were still being accepted) in anticipation of a release. The
patch rate increased as people got on with fixing up failing tests on
various platforms, improving documentation, and improving OO
functionality. Not all the object patches were from Dan; chromatic got
in on the act with a couple of tweaks to <b><i>parrotobject.pmc</i></b>...</p>
<p><a href='http://groups.google.com/groups?selm=403C647E.5070407@toetsch.at' target='_blank'>groups.google.com</a></p>
<a name='Native PBC issues'></a><h2>Native PBC issues</h2>
<p>It turns out that, just at the moment, Parrot bytecode isn't actually
platform independent. This will, of course, get fixed, but it's not
Leo's top priority at present. He asked people who are running Parrot
on 64 bit and Big endian architectures to submit <b><i>native_pbc</i></b> test
files (if you're on such an architecture, take a look at
<b><i>t/native_pbc/*.t</i></b> for instructions, and the Parrot community will
thank you for it).</p>
<p><a href='http://groups.google.com/groups?selm=403C82A7.5050806@toetsch.at' target='_blank'>groups.google.com</a></p>
<a name='Object Questions'></a><h2>Object Questions</h2>
<p>Simon Glover did some sterling work exercising the Object documentation
and implementation, posting several bug reports and questions.</p>
<p><a href='http://groups.google.com/groups?selm=Pine.GSO.4.43.0402251338310.19034-100000@egg.amnh.org' target='_blank'>groups.google.com</a></p>
<p><a href='http://groups.google.com/groups?selm=Pine.GSO.4.43.0402251651500.27206-100000@egg.amnh.org' target='_blank'>groups.google.com</a></p>
<a name='Ladies and Gentleman: Objects!'></a><h2>Ladies and Gentleman: Objects!</h2>
<p>On Wednesday, several full days before the release date, Dan announced
that objects were done (well, everything that he promised would work
did) and asked for people to start 'abusing it heavily'. Which they
promptly did. There was applause too.</p>
<p><a href='http://groups.google.com/groups?selm=a0601020cbc62e5fe9c0a@' target='_blank'>groups.google.com</a>[10.0.1.2]</p>
<a name='Next on the hit list'></a><h2>Next on the hit list</h2>
<p>Having got objects up, Dan immediately posted a list of desiderata for
the next release but one. Is there no stopping him?</p>
<p><a href='http://groups.google.com/groups?selm=a06010206bc63b462c8e4@' target='_blank'>groups.google.com</a>[10.0.1.2]</p>
<a name='Today we have naming of parts'></a><h2>Today we have naming of parts</h2>
<p>Will the madness never stop?</p>
<p>Mitchell Charity spoke for everyone when he posted an extract from
PDD15:</p>
<pre>    What .NET calls an attribute parrot calls a property
    What .NET calls a property parrot calls an attribute</pre>
<p>Everyone shared the pain, though Paolo Molaro pointed out that it's not
exactly accurate and the .NET name for a parrot attribute is 'field'
(which is yet another term with wide variety of meanings when you think
about it). Not being the biggest OO fan in the world, Dan swears he's
just going to rename them Fred and Barney but not tell anyone which is
which.</p>
<p><a href='http://groups.google.com/groups?selm=200402262229.i1QMTrk13310@vendian.org' target='_blank'>groups.google.com</a></p>
<a name='LANGUAGES.STATUS updates'></a><h2>LANGUAGES.STATUS updates</h2>
<p>Mitchell also pointed out that <b><i>LANGUAGES.STATUS</i></b> was out of date and
several languages which were supposed to be okay failed to work on his
system. He asked for feedback to get it updated correctly.</p>
<p><a href='http://groups.google.com/groups?selm=200402280612.i1S6CSF32360@vendian.org' target='_blank'>groups.google.com</a></p>
<a name='Inconsistent Parrot/IMCC behaviour'></a><h2>Inconsistent Parrot/IMCC behaviour</h2>
<p>Gregor Purdy found that Parrot was doing different things with the .pasm
file generated from an .imc file by IMCC than it was when it ran the
.imc file directly. Melvin Smith and Leo both agreed that it was a bug,
but it's very hard to fix with the current incarnation of IMCC. IMCC2
should (will) fix the issue. Leo provided a workaround to fix the
generated .pasm though.</p>
<p><a href='http://groups.google.com/groups?selm=1077956570.15543.4.camel@borg.focusresearch.com' target='_blank'>groups.google.com</a></p>
<a name='The Kakapo leaps'></a><h2>The Kakapo leaps</h2>
<p>Yay! Parrot 0.1.0 &quot;Leaping Kakapo&quot; got released at 2004022913:45:49
GMT. This is a big release, with Objects and multi-threading as well as
a major documentation overhaul and a bunch of other good stuff. Anyone
who suggests that I'm only really excited by this particular release
because I came up with the code name.</p>
<p>Pointing out that the Kakapo is a flightless, nearly extinct species of
parrot is considered unsporting.</p>
<p><a href='http://groups.google.com/groups?selm=4041FB1D.4030304@toetsch.at' target='_blank'>groups.google.com</a></p>
<a name='Meanwhile, in perl6-language'></a><h1>Meanwhile, in perl6-language</h1>
<a name='Perl 6? When?'></a><h2>Perl 6? When?</h2>
<p>Aaron Sherman noted that Apocalypse 1 was published in 2001, and it
made mention of Apocalypse 26. And we've seen all of six
apocalypses. He wondered if there was anything that could be done to
increase the apocalypse rate. As chromatic pointed out, no plan
survives first contact with the enemy; it turns out that a lot of the
theoretical apocalypses (one apocalypse per chapter of Programming
Perl), aren't actually necessary for specifying the language to the
point where we can start implementing.</p>
<p>Larry also answered Aaron's concerns and noted that last year he had to
take half a year off 'to participate in various non-optional gastric
revisions'. He quickly discussed the outstanding chapters and RFCs and
pointed out that a large amount of the work had already been
done. Which is nice.</p>
<p>Larry also showed us his outline of Apocalypse 12 which is apparently
about a week away from the first alpha for the sixcabal. It looks
rather promising (and it's rather easy to see why it's taken so long).</p>
<p><a href='http://groups.google.com/groups?selm=1077816664.1292.130.camel@pps' target='_blank'>groups.google.com</a></p>
<p><a href='http://groups.google.com/groups?selm=20040226192647.GA11151@wall.org' target='_blank'>groups.google.com</a> -- Larry's big plan</p>
<p><a href='http://groups.google.com/groups?selm=20040226194426.GB11151@wall.org' target='_blank'>groups.google.com</a> -- Apocalypse 12 outline</p>
<a name='Thinking about accessors'></a><h2>Thinking about accessors</h2>
<p>John Williams wondered about how accessors will work with Perl 6
objects. In particular he wondered about cases like:</p>
<pre>    $foo.bar_attr += $z;
    $foo.bar_attr++;</pre>
<p>Things got a little complicated, indeed Larry muttered that there would
be a delay to A12 because John had asked him to explain something that
he hadn't figured out yet.</p>
<p><a href='http://groups.google.com/groups?selm=Pine.LNX.4.33.0402271931010.24668-100000@sharkey.morinda.com' target='_blank'>groups.google.com</a></p>
<a name='An interesting matching problem'></a><h2>An interesting matching problem</h2>
<p>Austin Hastings came up with a neat little problem for
matching. Consider an instrumented string class which carries
information like 'bold' and 'italic' or even the language of a
substring. How would you write a search to match all the letters 'l' in
french text. (Not a very realistic problem I know, but you'll have to
bear with me).</p>
<p>Larry responded with a neat idea involving <code>&amp;</code>, so you would write:</p>
<pre>   /[l &amp; &lt;french&gt;]/ </pre>
<p>where french is presumably a block rule that makes a method call on the
appropriate character.</p>
<p><a href='http://groups.google.com/groups?selm=OIEJIIJJCGOEMIJDBHAOAEIJCAAA.Austin_Hastings@Yahoo.com' target='_blank'>groups.google.com</a></p>
<a name='Exegesis 7'></a><h2>Exegesis 7</h2>
<p>Damian's Exegesis 7, dealing with the replacement for Perl 5's format,
was published on Thursday. It's jolly good. Really. And you can use it
now if you grab Perl6::Form from CPAN. This threw up a pile of
questions about ambiguities, edge cases and all the other stuff that
p6l does so well. The version of the exegesis at perl.com has already
been updated to take some of these issues into account.</p>
<p><a href='http://www.perl.com/pub/a/2004/02/27/exegesis7.html' target='_blank'>www.perl.com</a></p>
<a name='Announcements, Apologies, Acknowledgements'></a><h1>Announcements, Apologies, Acknowledgements</h1>
<p>Whee! The Summary goes to the mailing lists before midnight on
Monday. &quot;Will I be able to keep up this dizzy pace?&quot; I ask myself.</p>
<p>If you find these summaries useful or enjoyable, please consider
contributing to the Perl Foundation to help support the development of
Perl. You might also like to send me feedback at
mailto:<a href='mailto:p6summarizer@bofh.org.uk'>p6summarizer@bofh.org.uk</a>, or drop by my website.</p>
<p><a href='http://donate.perl-foundation.org/' target='_blank'>donate.perl-foundation.org</a> -- The Perl Foundation</p>
<p>x<a href='http://dev.perl.org/perl6/' target='_blank'>dev.perl.org</a> -- Perl 6 Development site</p>
<p><a href='http://www.bofh.org.uk/' target='_blank'>www.bofh.org.uk</a> -- My website, &quot;Just a Summary&quot;</p>
</div>
